// 思路
// 1. 读出这个文件，读出来之后是字符串格式的
// 2. JSON.parse(JSON字符串格式) ---> 数组
// 3. 数组.push()
// 4. 重新写回去
// 4.1 转回字符串
// 4.2 覆盖写入

// 原则： 走一步，看一步

const fs = require('fs')
const path = require('path')

const filePath = path.join(__dirname, 'db', 'data.json')
console.log(filePath)
// 1. 读出这个文件，读出来之后是字符串格式的
fs.readFile(filePath,'utf8', (err,data) =>{
  if(err){
    console.log(err)
    return
  }
  // 2. JSON.parse(JSON字符串格式) ---> 数组
  const arr = JSON.parse(data)
  // 3. 数组.push()
  arr.push({"name": "小张"})
  // 4. 转回字符串
  const newArrStr = JSON.stringify(arr)
  console.log(newArrStr)
  // 5.覆盖写入
  fs.writeFile(filePath, newArrStr, (err)=>{
    if(err) {
      console.log(err)
      return
    }
    console.log('写入完成')
  })
})
// console.log(newArrStr)
// // 5.覆盖写入
// fs.writeFileSync(filePath, newArrStr)
